package com.xiaoyu.beans.factory.config;

import com.xiaoyu.beans.factory.HierarchicalBeanFactory;
import com.xiaoyu.core.convert.ConversionService;
import com.xiaoyu.util.StringValueResolver;

public interface ConfigurableBeanFactory extends HierarchicalBeanFactory, SingletonBeanRegistry {
    void addBeanPostProcessor(BeanPostProcessor beanPostProcessor);

    /**
     * 销毁单例bean
     */
    void destroySingletons();

    /**
     * propertyValue相关
     * @param valueResolver
     */
    void addEmbeddedValueResolver(StringValueResolver valueResolver);
    String resolveEmbeddedValue(String value);

    /**
     * 类型转换
     */
    void setConversionService(ConversionService conversionService);
    ConversionService getConversionService();
}
